Aspects and Exception Handling: The Case of Explicit Join Points

نویسندگان

  • Kevin Hoffman
  • Patrick Eugster
چکیده

Several authors have debated the modularity and obliviousness of aspects in AOP and the links between these two notions, noting that obliviousness is not always desirable or achievable. Many proposals have appeared, mainly in the context of AspectJ, to mitigate these issues by restricting upfront, or "inferring" and documenting, where aspects can apply. As pointed out, sacrificing certain facets of obliviousness can not only increase safety but even increase modularity. This paper presents and evaluates a simple extension to AspectJ, consisting in explicit join points (EJPs) which denote potential occurrences of aspects in the base code and enable information passing between base code and aspects. The evaluation takes place in the context of exception handling; by picking up on a recent study of the use of aspects for the same purpose, we quantifg the benefits of our extensions for various common measures of code quality in the context of AOP, such as separation of concerns or coupling.

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

A Fine-Grained Join Point Model for More Reusable Aspects

We propose a new join point model for aspect-oriented programming (AOP) languages. In most AOP languages including AspectJ, a join point is a time interval of an action in execution. While those languages are widely accepted, they have problems in aspects reusability, and awkwardness when designing advanced features such as tracematches. Our proposed join point model, namely the point-in-time j...

متن کامل

Assessing the Impact of Aspects on Exception Flows: An Exploratory Study

Exception handling mechanisms are intended to support the development of robust software. However, the implementation of such mechanisms with aspectoriented (AO) programming might lead to error-prone scenarios. As aspects extend or replace existing functionality at specific join points in the code execution, aspects’ behavior may bring new exceptions, which can flow through the program executio...

متن کامل

An Aspect for Idiom-based Exception Handling

The last couple of years, various idioms used in the 15 MLOC C code base of ASML, the world’s biggest lithography machine manufacturer, have been unmasked as crosscutting concerns. However, finding a scalable aspect-based implementation for them did not succeed thusfar, prohibiting sufficient separation of concerns and introducing possibly dangerous programming mistakes. This paper proposes a c...

متن کامل

AOP: towards a generic framework using program transformation and analysis

What exactly are aspects? How to weave? What are the join points used to anchor aspects into the component program? Is there a general purpose aspect language? We address these questions for a particular but quite general class of aspects: aspects which can be described as static, source-to-source program transformations. We discuss the design of a generic framework to express aspects as syntac...

متن کامل

Statement Annotations for Fine-Grained Advising

AspectJ-like languages are currently ineffective at modularizing heterogeneous concerns that are tightly coupled to the source code of the base program, such as logging, invariants, error handling, and optimization. This leads to complicated and fragile pointcuts and large numbers of highly-repetitive and incomprehensible aspects. We propose statement annotations as a robust mechanism for expos...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 2007